home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / telecomm / serfx1_1.lzh / serialfx.doc < prev    next >
Text File  |  1994-08-27  |  8KB  |  199 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.                                Serial Fix © 1992
  10.                           by Medical Designs Software
  11.                                   Version 1.1
  12.  
  13.          Written by: Bill Penner
  14.          Icons created by: Bruce D. Noonan, M.D.
  15.  
  16.  
  17.              This program may be distributed and used, free of charge,
  18.          provided that the program is distributed in complete form and
  19.          UNmodified.  This software is not to be sold, however, may be
  20.          included  on  disks which are sold for a small handling fee.
  21.          Medical  Design  Software  retains  all  copyright  exclusive
  22.          rights except exclusive distribution.  This software consists
  23.          of  the  following  files:  SERIALFX.PRG,  SERIALFX.CPX,  and
  24.          SERIALFX.DOC (this file).
  25.  
  26.  
  27.  
  28.          PURPOSE
  29.  
  30.              Serial  Fix was written as an upgrade to the old TurboCTS
  31.          program,  written  by Bill Penner, long ago, as an attempt to
  32.          fix  the old RTS/CTS problem.  The problem the ST/STe/TT has,
  33.          occurs  when  a  high speed modem is used in conjunction with
  34.          ZMODEM  or  any near-continuous flow transfer program is used
  35.          to  send  data.   The ST/TT has problems properly recognizing
  36.          when  the  modem  deasserts  CTS  (telling the ST/TT that the
  37.          buffer  is  full  and don't send any more data), resulting in
  38.          the  ST  overflowing the modem's buffer.  This results in bad
  39.          data  being  sent  which  results  in CRC errors, packet size
  40.          problems, and other data transmission errors.
  41.  
  42.              TurboCTS was only a partial fix of the problem.  TurboCTS
  43.          did manage to speed things up to the point where CTS response
  44.          was  generally  ok, however, that program did not work on the
  45.          TT,  did  not support XBRA programming requirements, and only
  46.          worked for RTS/CTS handshaking.
  47.  
  48.              Serial  FIX  is  a replacement for TurboCTS and will work
  49.          with  all  versions  of  TOS  (1.0 through 3.06).  Serial FIX
  50.          supports  both  RTS/CTS, XON/XOFF, and no handshaking modes.
  51.          The  desired  handshaking  mode is set from the RS232 control
  52.          panel  or other program as you currently do now.  The new fix
  53.          is  a  REAL fix to the RTS/CTS problem.  Previous fixes (like
  54.          TurboCTS) only fixed the symptoms of the problem.
  55.  
  56.          INSTALLATION:
  57.  
  58.              Serial  FIX  is  composed of two parts, a program for the
  59.          AUTO  folder  and  a  CPX file to be used with the extensible
  60.          CONTROL (XCONTROL.ACC) panel.
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.              SERIALFX.PRG  is  the  heart of the Serial FIX solution.
  75.          SERIALFX.PRG is intended to be installed in your AUTO folder,
  76.          although  it  can  be  ran from the desktop, and replaces the
  77.          current  serial  routines for the ST compatible port.  The ST
  78.          compatible  port is the only port on the ST and STe machines,
  79.          or the Modem 1 port on the MegaSTe and TT machines.
  80.  
  81.              SERIALFX.CPX  is  a  control  panel  to  be used with the
  82.          extensible  control panel (XCONTROL.ACC).  The CPX is used to
  83.          lock  the  serial  routines  into  using RTS/CTS handshaking,
  84.          regardless   of   the   desires   of  a  program.   The  file
  85.          SERIALFX.CPX  is  to be placed in in your folder of CPX files
  86.          (often called 'CPX').
  87.  
  88.          OPERATION:
  89.  
  90.              SERIALFX.PRG:   Once the program has been started (either
  91.          booted  in  the  'AUTO'  folder  or run from the desktop), no
  92.          special  operations  are  needed.   The  program replaces the
  93.          system  routines  and  the port speed and handshaking are set
  94.          just  as  they  are now, either by terminal software, CONTROL
  95.          panel, or the extensible control panel.
  96.  
  97.              SERIALFX.CPX:   This  program  will allow you to lock the
  98.          handshaking  in RTS/CTS mode.  This is often needed because a
  99.          number  of  programs have been written to ignore RTS/CTS mode
  100.          (like FLASH).  If the CPX is not used to lock the mode on, if
  101.          the  mode  is  set  from  the  control  panel, and a terminal
  102.          program  is  started, very likely, the program would turn off
  103.          RTS/CTS.  With the mode locked, the program will be unable to
  104.          disable  RTS/CTS.   The  CPX will give you the option to save
  105.          the  current lock setting.  Saving the setting will cause the
  106.          selected mode to be entered every time the CPX boots up.  So,
  107.          note,  to  be  able to lock the RTS/CTS mode on, you must use
  108.          both the SERIALFX.PRG and the SERIALFX.CPX.
  109.  
  110.  
  111.          PROGRAMMING INFORMATION:
  112.  
  113.              This  version  of  the  software should now be fully XBRA
  114.          compliant.    When  the  software  starts  and  installs  the
  115.          replacement routines, the TOS version is checked to determine
  116.          the  best  method  of installation (read for maximum speed).
  117.          Under  TOS  1.0,  traps  1,  13,  and  14 are intercepted and
  118.          processed.   Under  TOS  1.2,  1.4,  and  1.6  (non-Bconmap()
  119.          compatible  machines  after  1.2),  the  xcon vector table is
  120.          used,  and  only  trap 14 is used to receive Rsconf() calls.
  121.          Under  Bconmap()  compatiable  systems,  bconmap (port 6) and
  122.          xcon  vectors  are  modified  so that no trap interception is
  123.          necessary.
  124.  
  125.              Other  software  can be used to lock or unlock the serial
  126.          routines.   To  perform this function, look in the cookie jar
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.          for  a 'MDSa' cookie.  The long data byte is a pointer to the
  140.          following data structure:
  141.  
  142.              struct {
  143.                   int   lockfg;        /* RTS/CTS locked flag (bit 1 =
  144.          locked) */
  145.                   int   (*setlock)()    /*  Routine to set lock status
  146.          */
  147.              } serfx;
  148.  
  149.          The  lock  status is set by pushing an integer with the value
  150.          of  either  0  (to  disable  lock)  or 1 (to enable) and then
  151.          jsr'ing  the  setlock  routine  (i.e. (*serfx->setlock)(1) to
  152.          enable  the  lock).   The  call  can be made in user or super
  153.          mode.  That is all there is to it.
  154.  
  155.  
  156.          WRAP UP
  157.  
  158.              Well, ATARI has indicated that this problem (the real one
  159.          that  has  been haunting us for many years) is finally fixed.
  160.          The  fix  should  show up in some future release of ROMs from
  161.          ATARI.   Until  that  time,  this  software  should  fix  the
  162.          problem.
  163.  
  164.              As  normal,  PLEASE  let me know if you have any problems
  165.          with  the  program.   I have attempted to make the program as
  166.          compatible with other software as possible.
  167.  
  168.          Bill Penner, IAAD Member
  169.          3235 Wright Avenue
  170.          Bremerton, WA  98310-4753
  171.  
  172.          Phone: (206) 373-4840 (before 9pm Pacific)
  173.          GEnie: BPENNER
  174.  
  175.  
  176.          CHANGES SINCE VERSION 1.0
  177.  
  178.              Two  bugs  that  were  discovered  were fixed.  Both bugs
  179.          would  only  occur  if  no  cookie  jar  was  found.  One bug
  180.          resulted  in  creating  a cookie jar that was full of garbage
  181.          and  the  other would not build a cookie jar.  The second bug
  182.          was  the more common, which would result in the CPX reporting
  183.          that  the  program  was not loaded.  Running the SERIALFX.PRG
  184.          program a second time often worked to fix the problem.
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.